不用费劲装 IDE 了!GitHub + VS Code 推出云端编程新利器
受疫情的影响,全球最大的开源社区 GitHub 今年采用线上形式举办其技术峰会 Satellite 2020。每年的 Satellite 是一次技术界的盛会,今年尤其盛势空前,GitHub 一口气发布了四款新品:Codespaces、GitHub Discussions、Code&secret scanning 以及 GitHub Private Instances。
其中 Codespaces(代码空间)引起开发者广泛的关注,堪称是程序员的神器,Codespaces 为开发者提供基于云端托管的完整开发环境,其功能强大,可在 GitHub 中秒开,用户十分便捷地为项目写代码。
笔者个人认为这是 GitHub 继去年底推出手机 App 后的一次重大迭代。手机版的 GitHub 略侧重于社交,这款在线编程 IDE 则是让 GitHub 回归到代码本身,提高开发效率。
Codespaces 是基于VS Code 打造的,那为何在微软收购 GitHub 后,还需打造这款在线编程 IDE?
据 GitHub 官网介绍,有时候开发者向社区贡献代码,可能是一件很困难的事。因为每个代码存储库都有自己不同的配置开发环境的方式,开发者在写代码前,通常需要数十个步骤来配置。更糟的是,有时开发者正在跟进的两个项目环境还冲突了。
基于此,Codespaces 应运而生。Visual Studio 提供技术支持,Codespaces 集成浏览器版 VS Code 编辑器,支持代码补全、导航、扩展、终端访问等功能。如果开发者更喜欢使用桌面版的 IDE,可在 GitHub 中启动 Codespaces 并从桌面连接它。
Codespaces 具有以下特性:
1、即时开发环境:在 GitHub 下,Codespaces 让你拥有完整的 Visual Studio Code 体验。
2、在浏览器页面中使用完整的开发环境来构建、测试、调试和部署代码。
3、简化工作流程,可以自动设置依赖关系和 SSH 密钥,开发者可更快地在任何项目上提交代码了。
4、支持扩展和自定义:使用 dotfiles 和 VS Code 扩展名来配置编辑器,在每个代码空间创建一致的环境。
目前 Codespaces还处于内测阶段,小伙伴可以去试试申请:github.com/features/codespaces
如今 Beta 版 Codespaces 是免费的,后续 GitHub 将计划提供简单的即付即用的收费模式。
看来有了这款神器,程序员小伙伴们敲代码更方便了!
Cloud IDE 大比拼
我们知道目前很多云服务商,在实践 DevOps 能力的过程中,云服务的客户往往会把需求、代码、构建、测试、发布、部署、运维、运营等工作全部从本地转移到云端,享受云服务带来的移动性和便利性。但是一直缺乏有效的上云方式,导致开发人员手中没有良好的工具,无法真正实现 DevOps 运维开发一体化的理念,因此一款云上 Coding 的开发工具,也是很多云服务商的必备神器。
业界主流的IDE工具无非几种,Eclipse、Visual Studio、IntelliJ,今天这几款也依然是桌面开发者的首选。具备 Web 端能力的工具,大概有以下几款:
一、Eclipse Che
Eclipse Che 是一个现代的、开放源代码的软件开发环境。它是一个通过提供结构化的工作区、项目输入、模块化扩展插件来支持 Codenvy 的引擎。Che 可以用作桌面 IDE,RESTful 工作空间服务器,或作为一个创建新的工具 SDK,支持一个有标签的 Docker images 启动一个默认 Eclipse Che。实际使用来说的话,Eclipse Che 对于 Java 更加友好,但是对于 Python、Rust 等语言功能支持不够强大,因此没有形成主流。
二、Theia
Theia 的界面有如熟悉的 VS Code,操作体验流畅自然,插件体系成熟稳定。
由于 Theia 的操作界面与 VS Code 非常接近,操作体验基本一致,有不少人都会误认为这就是 VS Code 的线上版本。
对于开发者而言,不需要重新学习一个新的开发工具,难道不是一件好事?Theia 从设计初期就充分考虑了桌面和云的不同特点,支持容器部署和虚拟机部署,浏览器访问。Theia 内核非常精简,只需要很低配置就可以运行起来。对于VS Code 插件扩展体系的直接支持尤其吸引人。众所周知 VS Code 的插件市场是业界最大的生态系统,从语言支持、业务对接、平台支持等诸多方面都给最终用户带来定制化能力。Theia 兼容 VS Code 插件扩展标准,好处不言自明。这也就说明了为什么诸多云厂商都采用 Theia 方案,来进行自己的云 IDE 研发。
三、VS Code
VS Code是微软在2015年正式宣布推出的产品,是一款能跨 Mac OS X、Windows 和 Linux 运行的开发工具,针对于编写现代 Web 和云应用的跨平台源代码编辑器。
VS Code 一经推出就抢占了各种 C 位,因为微软雄厚的 IDE 工具方面的技术储备,VS Code 对各种语言支持的程度均非常好,使用灵活方便。
这种新出现的 Web IDE 把本地开发工作搬到了云端,开发者可以在云端保存自己的开发环境,编写代码,运行和调试应用,甚至我们还可以对接云服务,提供类似代码检查这样的集成化场景能力。
新增 Github Discussions、代码扫描神器,
GitHub 更丰富了
GitHub Discussions
开发者在社区不只是一起编写代码,还一起讨论项目的功能等。但到目前为止, GitHub 只提供问题和拉取请求作为开发者之间的“对话”模式。但是问题和请求请求都是线性模式,适合于合并代码,但不适用于创建社区知识库。让开发者有专门的交流地方,这是 GitHub Discussions 的研发初衷。
GitHub Discussions 存在开发者的项目资源库中,使用线程格式来启动,开发者可以很快地响应和组织非结构化对话。并可将问题标记为已回答,如此一来,将丰富社区的知识库,还可用来维护常见问题解答和协作其他文档。
GitHub 表示“我们认识到社区讨论和编码一样是开发的一部分,因此讨论贡献也出现在用户的贡献图中。”
Code scanning 和 Secret scanning
告诉大家一个好消息:GitHub 向所有公共存储库免费提供代码 Code scanning 和 Secret scanning 功能。
GitHub Private Instances
企业在 GitHub 构建和使用软件,对安全性和合规性的要求较严格。所以 GitHub 针对企业用户,推出全新、完全托管的 GitHub Private Instances 计划。Private Instances 能增强的安全性、合规性和策略,包括自带密钥加密,备份归档以及对区域数据主权要求的合规性。
Github 对话、代码扫描、在线编程IDE……程序员大本营 GitHub 越来越丰富了,从发布的这些产品我们也能看到,GitHub 不断致力提高开发者的效率,祝福 GitHub 越来越好。
更多信息:https://github.blog/2020-05-06-new-from-satellite-2020-github-codespaces-github-discussions-securing-code-in-private-repositories-and-more/#codespaces
更多精彩推荐
☞华为回应美新规:不涉及产品买卖;微软 GitHub 帐户疑被黑;GCC 10.1 发布 | 极客头条
☞利用 Docker 在不同宿主机做 CentOS 系统容器 | 原力计划